使用 Camunda Modeler 打開付款檢索流程(Payment Retrieval process),然後單擊批准付款任務(Approve Payment Task)。在扳手(wrench)按鈕菜單中將活動類型更改為業務規則任務(Business Rule Task)。
接下來,通過在屬性面板中更改Implementation
和DMN
來Decision Ref
將業務規則任務鏈接到 DMN 表。approve-payment
為了檢索評估結果並將其自動保存為流程中的流程實例變量,我們還需要在屬性面板中將更改Result Variable
為approved
並使用singleEntry
as 。Map Decision Result
先選DMN
保存更改並使用Deploy
Camunda Modeler 中的按鈕部署更新的流程。
首先,通過單擊File > New File > DMN Diagram創建一個新的Camunda 7 DMN 圖。
現在新創建的圖表中已經添加了一個決策元素。通過單擊將其選中,然後為其指定名稱Approve Payment和 ID approve-payment
(決策 ID 必須與Decision Ref
您的 BPMN 流程中的 ID 匹配)。
接下來,單擊表按鈕創建一個新的 DMN 表。
首先,指定 DMN 表的輸入表達式。在此示例中,我們將根據商品名稱決定是否批准付款。您的規則還可以使用 FEEL 表達式語言、JUEL 或腳本。如果您願意,可以閱讀有關 DMN 引擎中的表達式的更多信息。
“雙擊”Input以配置輸入列。用作輸入標籤(Input Label):Item
和輸入表達式(Input Expression): item
接下來,設置輸出列。用作輸出列“Approved”的 輸出標籤Approved
和輸出名稱:approved
讓我們通過單擊 DMN 表左側的加號圖標來創建一些規則。我們還應該將輸出列更改為數據類型boolean
:
設置完成後,您的 DMN 表應如下所示:
要部署決策表,請單擊 Camunda Modeler 中的“Deploy”按鈕,將其命名為“Payment Retrieval Decision”,然後單擊“部署”按鈕。
現在,使用 Cockpit 查看決策表是否已成功部署。轉到http://localhost:8080/camunda/app/cockpit/並登錄。導航至“Decisions”部分。您的決策表*“Approve Payment”*應列為已部署的決策定義。
💡 **Cockpit** 預設密碼為 = 帳號:demo / 密碼:demo
接下來,使用 Tasklist 啟動兩個新的流程實例,並驗證流程實例是否會根據您的輸入進行不同的路由。為此,請轉至http://localhost:8080/camunda/app/tasklist/並登錄。
💡 Tasklist 預設密碼為 = 帳號:demo / 密碼:demo
單擊start a process 按鈕啟動流程實例並選擇Payment
流程。使用通用形式添加變量,如下所示:
新增以下參數(可以自由變換)
參數一:
參數二:
點擊Start。
接下來,再次單擊start a process 按鈕啟動另一個流程實例並選擇該Payment
流程。使用通用形式添加變量,如下所示:
新增以下參數(可以自由變換)
參數一:
參數二:
您將看到,根據輸入,工作人員將向信用卡收費或不收費。您還可以驗證 DMN 表是否已使用 Camunda Cockpit 進行評估。轉到http://localhost:8080/camunda/app/cockpit/。導航至“Decisions”部分,然後單擊“Approve Payment”。通過單擊表中的 ID 檢查評估的不同決策實例。
在 Camunda Cockpit 中執行的單個 DMN 表可能如下所示:
到此第五部分結束,如果想直接獲取到現在為止的進度,可以使用如下命令
git checkout -f Step-5
如果有任何問題,歡迎在下方留言!! 筆者頭一回寫技術文,如果內容有誤,或者內容的呈現上有所缺陷,如果您願意,歡迎在下方留言給我呦~~
這是我的部落格,歡迎點擊閱覽喔~~會不定期更新文章